home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Fatted Calf
/
The Fatted Calf.iso
/
Applications
/
Audio
/
Patchmix
/
XWindowsSource
/
struct.h
< prev
next >
Wrap
Text File
|
1992-03-28
|
3KB
|
131 lines
/* $Header: struct.h,v 1.4 90/09/08 12:51:52 mara Exp $
*
* struct.h
*
* Written by Mara Helmuth
*
* Description: Structs for Cmix X graphical interface
*
* $Log: struct.h,v $
* Revision 1.4 90/09/08 12:51:52 mara
* side panel
*
* Revision 1.3 90/09/05 22:14:04 mara
* ugen struct flags
*
* Revision 1.2 90/09/02 18:21:15 mara
* NeXT fixes, mbar methods
*
* Revision 1.1 90/08/27 17:11:19 mara
* Initial revision
*
* Revision 1.5 90/05/18 23:24:44 mara
* data_str
*
* Revision 1.4 90/05/18 19:26:16 mara
* *** empty log message ***
*
* Revision 1.3 90/05/13 15:47:27 mara
* *** empty log message ***
*
* Revision 1.2 90/01/30 11:08:56 mara
* ugen, oscil, out, add and param structs
* preset macro
*
* Revision 1.1 90/01/21 12:56:22 mara
* Initial revision
*
*/
/* maximum number of ugens */
#define MAX 35
/* command types */
#define COMPILE 1
#define DATA 2
#define RUN 3
#define RESCALE 4
#define PLAY 5
#define RESET 6
/* ugen types */
#define NONE 0
#define BUZZ 1
#define OSCIL 2
#define RAND 3
#define COMB 10
#define ELLIPTICAL 11
#define EVP 12
#define PLUCK 13
#define RESON 14
#define REVERB 15
#define ADD 20
#define SUBTRACT 21
#define MULTIPLY 22
#define DIVIDE 23
#define OUT 30
// mbar methods
#define UGEN_SELECT 1
#define UGEN_CONVERT 2
#define PARAM_SET 3
//#define CONNECT 4
#define PRESET 0
#define PFIELD -1
typedef struct param_struct {
int x, y; /* canvas location */
int in_ugen; /* if positive, input unit gen #
if 0, input is preset to "value"
if -1, is a pfield
*/
char value[60]; /* if preset, value set */
} param_str;
typedef struct oscil_struct {
param_str *amp, *freq, *phs, *out;
} oscil_str;
typedef struct evp_struct {
param_str *amp, *rise, *decay, *nfunc, *out;
} evp_str;
typedef struct buzz_struct {
param_str *amp, *freq, *nhar, *out;
} buzz_str;
typedef struct rand_struct {
param_str *out;
} rand_str;
typedef struct side_struct { // for side icons, +, -, x, /
int num_ins;
int type;
param_str *in0, *in1, *out;
} side_str;
typedef struct out_struct {
param_str *in;
} out_str;
typedef struct ugen_struct {
int type,moving; // moving is a flag, whether icon should be (re)drawn
int made; // whether memory allocated yet
int connected; // whether connected to another ugen
int x,y; // canvas location
oscil_str *oscil;
evp_str *evp;
buzz_str *buzz;
side_str *side;
out_str *out;
rand_str *rand;
} ugen_str;
typedef struct {
char inskip[20];
char outskip[20];
char dur[20];
char amp[20];
} data_str;